Logical Relations and Parametricity - A Reynolds Programme for Category Theory and Programming Languages

نویسندگان

  • Claudio Hermida
  • Uday S. Reddy
  • Edmund P. Robinson
چکیده

In his seminal paper on “Types, Abstraction and Parametric Polymorphism,” John Reynolds called for homomorphisms to be generalized from functions to relations. He reasoned that such a generalization would allow type-based “abstraction” (representation independence, information hiding, naturality or parametricity) to be captured in a mathematical theory, while accounting for higher-order types. However, after 30 years of research, we do not yet know fully how to do such a generalization. In this article, we explain the problems in doing so, summarize the work carried out so far, and call for a renewed attempt at addressing the problem.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Two-dimensional proof-relevant parametricity

Relational parametricity is a fundamental concept within theoretical computer science and the foundations of programming languages, introduced by John Reynolds [6]. His fundamental insight was that types can be interpreted not just as functors on the category of sets, but also as equality preserving functors on the category of relations. This gives rise to a model where polymorphic functions ar...

متن کامل

Parametricity as Isomorphism

We investigatea simple form of parametricity, based on adding \abstract" copies of pre-existing types. Connections are made with the Reynolds-Ma theory of parametricity by logical relations, with the theory of parametricity via dinaturality, and with the categorical notion of equivalence.

متن کامل

A Fibrational Semantics for Logic Programs

We introduce a new semantics for logic programming languages. It generalises the traditional Herbrand universe semantics, and specialises the semantics of logical relations, as used in analysing parametricity in functional and imperative programming languages. We outline a typed logic programming language, give it this semantics, and show how it supports structured development of logic programs...

متن کامل

Final Report for EPSRC Grant EP/E016146/1 Relational Parametricity for Computational Effects

Polymorphism is a feature of many programming languages, including typed functional languages (e.g., SML, Haskell), and recent “generic” versions of Java. Relational parametricity, introduced by Reynolds in 1983, is a powerful principle for reasoning about polymorphic programs and types. Previously, relational parametricity has been mainly studied for the second-order lambda calculus, a simple,...

متن کامل

Relational Parametricity for Higher Kinds

Reynolds’ notion of relational parametricity has been extremely influential and well studied for polymorphic programming languages and type theories based on System F. The extension of relational parametricity to higher kinded polymorphism, which allows quantification over type operators as well as types, has not received as much attention. We present a model of relational parametricity for Sys...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Electr. Notes Theor. Comput. Sci.

دوره 303  شماره 

صفحات  -

تاریخ انتشار 2014